<template>
  <div>
    主页
    <mine-com @send-dir="getData"  :mylist="324234" mytitle="sdf"></mine-com>
  </div>
</template>
<script setup lang="ts">
  import mineCom from '../mine/index.vue'
  let getData=(dirname:string,kk:number)=>{
      console.log(dirname,kk,"------------")
  }
      // ts的基本数据类型 
      // ts 创建数据的时候可以声明类型
      // js 弱数据类型的脚本语言
      // 字符串类型
      let myname:string="李连杰"
      // myname=88; //报错  myname声明是字符串类型 无法赋值数字类型
     myname="成龙"
     console.log(myname)
   // 数字类型
     let age:number=88;
     console.log(age)
    // 布尔类型
    let flag:boolean=true;
    flag=false;
    console.log(flag)

    //null  类型
    let hu:null=null;
    console.log(hu)

    //undefined 类型
    let abc:undefined=undefined;
    console.log(abc)

    // 
    let cc; //在不声明类型的时候 类型为any
    console.log(cc)
    
    // any类型 任意类型
    let myhobby:any=["1","2"];
    myhobby={name:1}
    myhobby=1;
     console.log(myhobby)
    // ts数组类型 的写法    类型[]
    let arr:string[] =["星期四","星期五","星期六"]
    console.log(arr)

    // 数组的ts写法2 泛型写法   Array<类型>
    let arr1:Array<string>=["杭州","厦门","深圳"];
      console.log(arr1)
    
  // 对象类型 :object
  let obj:object={
      name:1,
      age:2
  }
  console.log(obj)

  // 联合类型  |   当前变量的值是其中一个类型均可
  let game:string|number|boolean=true;
  game="游戏"
  console.log(game)

  // 联合类型 的数组1
  let myarr:(string|number|boolean)[]=[1,"ds",true]
  console.log(myarr)

  // 联合类型的数组
  let carr:Array<number|string|boolean>=[1,true,"dff"]
  console.log(carr)

  // 任意类型的数组
  let harr:any[]=[23,45,56,"sdf"];
  console.log(harr)
  let sarr:Array<any>=[23,345,[1,23]]
  console.log(sarr)
    
// 元组 Tuple 类型
// 固定长度， 每一项都有类型的一个数组
// 确认数组的长度 和 数组每一项的类型 使用元组
let karr:[string,number,string,boolean]=["sdf",34,"435",true];

console.log(karr)


// 枚举类型 enum
// 枚举类型 类似对象 如果不赋值 自动从0 开始排序
enum Color {Red, Green, Blue}
console.log(Color.Blue,"枚举的值")//2

enum Car {Benchi,Bmw="宝马",audi="奥迪"}
console.log(Car.Benchi)
console.log(Car.Bmw)
  
// 






</script>